upgrade glenfly arise1 series GPU DRM kernel driver to V46#846
Conversation
Reviewer's GuideThis PR upgrades the Glenfly Arise1 DRM driver to version 25.00.46 by adding Arise10D0 support, integrating fine-grained dynamic power-saving across engines, unifying debug/logging, enhancing EDID parsing and display state tracking, refactoring DP link training, and fixing build issues for LoongArch64 and RISC-V. File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
Hi @yiliang2008. Thanks for your PR. I'm waiting for a deepin-community member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
There was a problem hiding this comment.
Pull Request Overview
This PR upgrades the Glenfly Arise1 series GPU DRM driver to version V46. It introduces support for new GPU variants, implements dynamic per-engine power states and idle detection for power saving, enhances DP/HDMI compatibility (including EDID/SCDC parsing and display fixes), and improves build compatibility and code maintainability across diverse architectures.
- Adjustments to file formatting and removal of unused whitespace.
- Added support for the new Arise10D0 GPU variant with dynamic power‐saving API and improved display link training.
- Renamed variables (e.g. to “LinkedLaneNumber” and “LinkedSpeed”) for clarity and added additional validation checks for module indices.
Reviewed Changes
Copilot reviewed 97 out of 97 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| drivers/gpu/drm/arise/cbios/Hw/HwBlock/CBiosDIU_DP.h | Renamed variables for clarity and standardized main-link parameters. |
| drivers/gpu/drm/arise/cbios/Hw/HwBlock/CBiosDIU_HDAC.c | Added fallback logic for LinkSpeed to ensure a safe default is applied. |
| drivers/gpu/drm/arise/cbios/Device/Port/CBiosDP.c | Introduced additional module index validations and a vblank wait before device off. |
| drivers/gpu/drm/arise/cbios/Device/Monitor/CBiosHDMIMonitor.c | Updated EDID parsing to use new HFSCDSData structure fields. |
| drivers/gpu/drm/arise/cbios/Device/Monitor/CBiosDPMonitor.* | Updated link training parameter determination with new renaming and local aliases. |
| drivers/gpu/drm/arise/cbios/Device/CBiosShare.h | Reduced debug buffer size and refactored debug macros. |
Comments suppressed due to low confidence (5)
drivers/gpu/drm/arise/cbios/Hw/HwBlock/CBiosDIU_DP.h:134
- Renaming the variables to 'LinkedLaneNumber' and 'LinkedSpeed' improves clarity by reflecting the negotiated link parameters. Please ensure that all downstream references and accompanying documentation are updated to maintain consistency.
CBIOS_U32 LinkedLaneNumber; // 1 ~ 4 lanes
drivers/gpu/drm/arise/cbios/Device/Monitor/CBiosDPMonitor.c:292
- The refactoring in the link training logic uses local variables 'LinkSpeed' and 'LaneNum' and then assigns values to both the new LinkPass fields and the legacy ones. Ensure that the separation between the negotiated link parameters (LinkPassSpeed/LinkPassLaneNum) and the previous variables is intentional and that their propagation to downstream calls (e.g., in cbPHY_DP_DPModeOnOff) remains consistent.
/* Link training parameter determination */
drivers/gpu/drm/arise/cbios/Device/Monitor/CBiosHDMIMonitor.c:1113
- The update from using 'HFVSDBData' to 'HFSCDSData' for EDID parsing appears to reflect recent changes in the EDID specification. Please ensure that all related documentation and further handling of EDID data are updated to align with this new structure.
if(pDevCommon->EdidStruct.Attribute.HFSCDSData.IsSCDCPresent)
drivers/gpu/drm/arise/cbios/Device/Port/CBiosDP.c:210
- The addition of module index validation (and subsequent immediate return on an invalid index) enhances robustness. Confirm that similar validation patterns are applied consistently across devices to avoid silent failures.
DPModuleIndex = cbGetModuleIndex(pcbe, pDevCommon->DeviceType, CBIOS_MODULE_TYPE_DP);
drivers/gpu/drm/arise/cbios/Hw/HwBlock/CBiosDIU_HDAC.c:479
- The fallback logic that assigns a default LinkSpeed (CBIOS_DP_LINK_SPEED_5400Mbps) when the current value is zero ensures safer operation. Please verify that this default is appropriate for all supported sink devices and documented in the API specifications.
if(!LinkSpeed)
| #ifndef CBIOSDEBUGMESSAGEMAXBYTES | ||
| #define CBIOSDEBUGMESSAGEMAXBYTES 256 | ||
| #endif | ||
| #define CBIOSDEBUGMESSAGEMAXBYTES 64 |
There was a problem hiding this comment.
Reducing CBIOSDEBUGMESSAGEMAXBYTES from 256 to 64 may lead to truncated debug messages during detailed logging. Consider ensuring that 64 bytes is sufficient for all required debug output or document this limitation accordingly.
| #define CBIOSDEBUGMESSAGEMAXBYTES 64 | |
| #define CBIOSDEBUGMESSAGEMAXBYTES 256 |
d6c2733
into
deepin-community:linux-6.6.y
main changelist in this chance:
1, adjust file format, delete unused tab/space
2, add more arise1 gpu support
3, add some dynamic power-saving code
4, fix some display issue, enhanced compatibility
5, fix some loongarch64 only issue
6, fix build error for risc-v
Summary by Sourcery
Upgrade Glenfly Arise1 series DRM driver to V46: add Arise10D0 support, implement dynamic engine power‐saving and idle detection, extend DP/HDMI compatibility with EDID/SCDC parsing, patch architecture-specific build issues, and perform comprehensive code cleanup and logging refactoring.
New Features:
Bug Fixes:
Enhancements:
Build: